home *** CD-ROM | disk | FTP | other *** search
- ***************************************
- ** LORD OF HOSTS **
- ** ============= **
- ***************************************
- ** © April 1991 Tim Pietzcker **
- ***************************************
-
-
- WHAT IS "LORD OF HOSTS" ?
- =========================
-
- Lord Of Hosts (from now on referred to as "Lord") is a strategy game for two
- players. It's played on a 8x8 board. Each player controls seven knights and
- one king. The goal of the game is to manoeuvre the opponent's king into a
- situation in which he can no longer move, i.e. to checkmate him. Another way
- of winning the game is to capture six of the opponent's knights.
-
- ONE THING THAT SHOULD BE MENTIONED FIRST
- ========================================
-
- I've made extensive use of CygnusSoft's "req.library" in this program. So, in
- order to be able to start Lord_Of_Hosts, you need the req.library in your LIBS:
- directory. I've included the req.library (V1.4) in this distribution. Just
- execute the supplied script file Install_ReqLib (either from a Shell or from
- the WorkBench) before the first time you run "Lord" if you don't already use
- this library yourself.
-
- DISCLAIMER AND COPYRIGHT NOTES
- ==============================
-
- This program is supplied as is without representation or warranty of any kind,
- either expressed or implied. I won't take any responsibility for any damage
- that might be caused through the use (or better, misuse) of this program.
-
- Lord Of Hosts is NOT public domain! It is Copyright © 1991 Tim Pietzcker. ALL
- RIGHTS RESERVED. However, these files may be freely copied for a SMALL nominal
- fee providing they remain together and in their original form. (a small fee is
- LESS than seven dollars. I pay no more than 1,50 DM (about $1) for a public
- domain disk. If you pay more, it's your own problem.) Lord Of Hosts may be
- distributed in the Fred Fish series. Distribution in ANY other series requires
- written permission from the author (see my address at the bottom of this file).
-
- (And Mr. Stefan O. from Essen, Germany shouldn't even try to get it.)
-
- ***********************************
- *Don't support PD software piracy!*
- ***********************************
-
- RULES
- =====
-
- The rules are fairly simple. On each piece, there's a number indicating how
- many squares this piece HAS GOT TO move. After the move, a different number
- may appear on this piece. The pieces may move only horizontally or vertically,
- *NOT* diagonally. One right-angle turn per move is permitted. For example,
- one piece bearing the number 3 that is standing in the middle of the board may
- - move 3 squares up
- - move 1 square down and 2 to the left
- - move 2 squares to the right and 1 square up
- - etc.
-
- There are only a few restrictions: Firstly, a piece cannot jump over any other
- piece. Then, it's not possible to go forwards and backwards in one single
- move. There is also a situation in which an otherwise legal move will not be
- permitted: When a player's king is threatened by an enemy's piece ("CHECK !"),
- only moves that lead the king out of this threat are valid. It's just like in
- chess. Similarly, if a player attempts to move his king to a square on which
- he could be beaten, or if he tries to do a move that exposes his king to
- danger, he will not be able to do so.
-
- Any piece can capture an enemy's knight simply by moving onto the square that
- the knight is occupying. Remember that this is a way of winning the game:
- beat six knights and victory is yours.
-
- The idea of check and checkmate is directly taken from chess. So, if you
- manage to create a situation that leaves the opponent's king no escape, you win
- the game. Of course, the computer will tell you so if this happens.
-
- As soon as one player does a move after which his opponent's king is beatable,
- a message is displayed "Player x announces 'CHECK!'". As long as it doesn't
- also say "Player y's King is checkmated!", there is at least one valid move for
- player y left.
-
- Well, that's about all for the rules. There also is a menu option "Rules" to be
- found in the "Game" menu (keyboard shortcut RIGHT-AMIGA-?).
-
- ONE WORD ABOUT THE MOUSE POINTER
- ================================
-
- Since this is a mouse-controlled two player game, I had to find a way to give
- both players a chance to move the mouse pointer (one after the other, of
- course). Since fewest Amiga users have got two mice, I decided to have player
- 1 take the mouse and to have player 2 take a joystick. After player 1 has
- finished his move, the mouse will be switched off internally and player 2's
- joystick will become the new "mouse mover". So don't panic if the system seems
- to have crashed (a motionless mouse pointer IS a frightening thing, I admit);
- just give your joystick a little nudge and watch the pointer float majestically
- over the screen (I'm getting carried away with this, sorry). The joystick's
- fire button will act just like the mouse's select button (the left one, okay?).
- Unfortunately, joysticks don't have menu buttons yet, so if you really have to
- make a menu selection while the joystick is controlling the pointer, you have
- to depress RIGHT-Alt-RIGHT-AMIGA to simulate the menu button.
-
- If you don't like the JoyMouse's speed, you can change it by selecting "Set
- JoyMouse Speed" (Special Menu), keyboard shortcut AMIGA-J. And if you don't
- like the idea of mouse/joystick swapping, you can turn the whole thing off by
- selecting "JoyMouse Off" (also Special Menu).
-
- And if you don't have a joystick or if you are a fanatic keyboard addict, you
- can still use the keyboard to move the mouse pointer (left AMIGA key plus
- cursor keys [plus optional SHIFT key]).
-
- HOW TO PLAY LORD OF HOSTS
- =========================
-
- This is really easy. First, select "Begin Game" (Game Menu). You will be
- asked to enter your and your opponent's names. After you've done so, the
- computer consults his random number generator to decide who starts the game.
- Click on "Resume". You can always see whose turn it is by looking at the two
- boxes containing the players' names. The words "Player 1" turn blue when it's
- player 1's move. The same applies to player 2.
-
- Player 1 gets the red pieces; player 2 gets the white ones.
-
- Let's suppose player 1 starts the game. He should now choose the piece that he
- wants to move. This is done as follows:
- - move the mouse pointer over the piece
- - click the left mouse button (or the joystick fire button).
- A box will be drawn around this piece to show that it's the active one. Player
- 1 can now either change the active piece by clicking on a different piece of
- his or select the piece's destination square (also by clicking on it). If
- there is a valid way to move the active piece there, the move will be executed,
- and player 2 will now get control over the mouse pointer. That's it.
-
- AND NOW FOR ALL THE EXTRAS
- ==========================
-
- The Amiga is an extraordinary computer. Therefore a game for the Amiga must
- have extraordinary features. And here they are:
-
- * Full Undo/Redo. Take back as many moves as you want and/or replay them.
-
- * Three different help modes for each player.
-
- * Load/Save Game facility. All the Undo/Redo information will also be saved.
-
- * Four different kinds of boards - Infinite variability => Every game is
- different from the last one.
-
- * On-line help facility.
-
- Detailed description of the extras
- ==================================
-
- UNDO / REDO (Special Menu):
- Selecting Undo (shortcut: AMIGA-U) takes back the last move. Selecting it
- again takes back the move before that one. And so on. The limit to the
- number of undo opeations is 500. In other words, a game that last over 501
- moves can not be undone upto the first move. However, this limit is so high
- that I doubt whether anyone can reach it in a normal game.
-
- Redo (shortcut: AMIGA-R) does just the opposite: The last move that has
- been undone is "played back". This can only work if no new moves have been
- made since the last undo operation.
-
- LOAD / SAVE GAME (Game Menu):
- Selecting Load Game (AMIGA-L) will bring up the CygnusSoft File Requester
- which is the best one that I've ever seen (I didn't program it, Bruce Dawson
- and Colin Fox did)! On the left side, the files and subdirectories within
- the current directory are displayed. On the right side there is the list of
- all mounted devices (DF0:, RAM:, RAD:, C:, LIBS:, etc.) There's a Parent
- gadget to get you one level up in the directory tree and some other rather
- self- explanatory things. Select a game file by double clicking on it. If
- a directory is changed by a different program, "Lord" will not be aware of
- it until you reload that directory using the "Get Dir" gadget.
-
- Saving a game is just as easy: Select "Save Game" (AMIGA-S), change to the
- desired directory and enter the filename under which the game should be
- saved. If the file already exists, you will be asked to confirm whether you
- really want to write over the old file. Remember that the old contents of a
- file are lost when it's overwritten.
-
- HELP MODES:
- Normally, none of the players receives any help from the computer. However,
- it might be desirable to find out what value a certain piece will have after
- a move. On the standard board, it is possible to deduce this value (I won't
- tell you how, haha!), but if you want to get a hint anyway, you can instruct
- the computer either
- - to show you the new value if the piece has visited this square before
- (i.e., it "knows" this square's value) or
- - to show you the new value in any case, regardless of whether the piece
- has been there before or not.
- This works as follows: In the Special Menu, there are two menu items,
- "Player 1 Help Mode" and "Player 2 Help Mode". Choose between "No Help",
- "Show Known Values", and "Show All Values". If you choose one of the
- "Show..." subitems, the way to move a piece will change:
- - Select the piece you want to move.
- - Select the destination square.
- If the move is valid, the piece will move there. If you selected "Show
- Known Values" and the value is not known, a question mark will be dis-
- played. Otherwise, the new value will be displayed. Now the words
- "Player 1/2" will change from blue to yellow. This indicates that the
- computer is now waiting for you to confirm or to cancel the move. You
- can now
- - confirm the move by clicking again on the destination square. If there
- was a question mark, it will be replaced by the new value.
- - Alternatively, you can cancel the move by clicking on any other square
- but the destination square. The move will be taken back, allowing to
- select a new destination or even a different piece to move with.
-
- DIFFERENT BOARD TYPES:
- "Lord" is based on a board game. On this board, the pieces' values are
- determined by little magnets hidden under the board. This leads to a
- regular pattern of values (that you can find out by reading the program's
- source code or simply by playing the game (if you're smart enough)). This
- board is simulated by "Lord". It's called the Standard Board. If this
- board is rotated by 90°, the patterns change. There's a menu called "Board"
- in which you can change the type of board. The two items "Standard Board"
- and "Standard Rotated 90°" have just been explained.
- Since the generation of (pseudo) random numbers is possible, you can also
- select a "Random Board". Random Boards come in two flavors:
- - Balanced: When generating the random value patterns, the computer ensures
- that the values are distributed evenly. So, each knight gets exactly 16
- squares where his value will be 1, 16x2, 16x3 and 16x4. The kings gets
- 32 squares of 1s and 32 squares of 2s.
- - Unbalanced: The computer doesn't force himself to distribute the values
- evenly. Thus it is possible that p.e. one piece has a value of 4 on every
- single square (but highly improbable [1 against 3.4028e38]).
-
- ON-LINE-HELP:
- There's a menu item "Rules" (mentioned earlier).
- Also, the item "Explain Invalid Move" (Special Menu, AMIGA-E) will tell you
- why the last unsuccessful attempt to move had failed.
-
-
- THAT'S IT !
- ===========
-
- Exit "Lord" by selecting "Quit" (Game Menu, AMIGA-Q). Hope you enjoyed it!
-
- ABOUT THE REQ.LIBRARY
- =====================
-
- Quoted from the Req.library doc file:
-
- "Req.library was written by Colin Fox (of Pyramyd Designs) an Bruce Dawson (of
- CygnusSoft Software). Req.library is a freely distributable library [...].
- Req.library is not public domain. The requester library and all documentation
- and example programs are all copyright 1989."
-
- I only included the files necessary to compile "Lord". In order to get all the
- files plus docs etc. buy Fred Fish's disk #419. Better yet, buy CygnusEd
- Professional.
-
- REQUESTER KEYBOARD SHORTCUTS
- ============================
-
- Instead of using the mouse to answer the requesters, you can also type 'y' or
- 'v' as a shortcut to a "Resume" or "Ok" gadget; ESC, 'n', 'b' or 'q' as a
- shortcut to a "Cancel" or "Next Page" gadget; and finally 'm' as a shortcut to
- the "Prev Page" gadget.
-
- PROGRAMMER INFO
- ===============
-
- Lord Of Hosts was developed on an AMIGA 2000A (Kickstart 1.3, 3.5MByte RAM).
- It works with Kick 1.2. However, I've had no chance to find out whether it
- works with Kick 2.0. Don't know why it shouldn't.
-
- All the files necessary to compile Lord_Of_Hosts (Aztec C V5.0) are included in
- this release. Start up your C environment, CD to the directory containing the
- source codes and enter 'Make Lord'.
-
- I have modified the req.h and reqglue.o files (supplied with CEDPro) in order
- for them to work with Aztec C 5.0.
-
- Lord Of Hosts has been tested on several different machines without any error
- showing up. If something doesn't work on your Amiga, please let me know,
- telling me everything about your system configuration and the error.
-
- I don't think it would be difficult to port Lord Of Hosts to Lattice C.
- However, I haven't tried yet.
-
- CREDITS
- =======
-
- Many thanks are due to:
- - Bruce Dawson and Colin Fox for the req.library
- - CygnusSoft for CEDPro, the best editor for the Amiga.
- If you are a programmer and haven't bought CEDPro yet, DO IT!
- - Manx for Aztec C 5.0 and the source level debugger (Guru go home!)
- - Dan Silva for DPaint that I used to design the game's graphics
- - Kevin Bjorke for NewGetImage (Demo Version 1.3) that translated the DPaint
- brushes into C structures
- - My brothers, Jan & Ulf for beta testing all the bugs out of this game
- (knock on wood)
-
- MY ADDRESS
- ==========
-
- Send all comments, suggestions, bug reports, dollar bills and accelerator
- boards to:
-
- Tim Pietzcker
- Schwarzwaldstr. 52
- W-7819 Denzlingen
- Germany
-